/**
 * 
 */
package com.yidu.service;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import org.springframework.beans.BeanUtils;

import com.yidu.dao.UserRoleDao;
import com.yidu.domain.UserRole;
import com.yidu.domain.vo.UserRoleVo;

/**
 * @描述 用户角色表实现类对象
 * @author 梁海长
 * @date 2019年9月25日上午9:45:19
 *
 */
public class UserRoleServiceImp implements UserRoleService{
	private UserRoleDao userRoleDao;

	public UserRoleDao getUserRoleDao() {
		return userRoleDao;
	}

	public void setUserRoleDao(UserRoleDao userRoleDao) {
		this.userRoleDao = userRoleDao;
	}
	/**
	 * 增加或者修改数据
	 */
	@Override
	public void saveOrUpdate(UserRoleVo userRoleVo) {
		UserRole userRole = new UserRole();
		BeanUtils.copyProperties(userRoleVo, userRole);
		userRoleDao.saveOrUpdate(userRole);
		
	}
	/**
	 * 查询全部数据
	 */
	@Override
	public List<UserRoleVo> findAll(UserRoleVo userRoleVo) {
		UserRole userRole = new UserRole();
		BeanUtils.copyProperties(userRoleVo, userRole);
		List<UserRole> list = userRoleDao.findAll(userRole);
		List<UserRoleVo> listVo = new ArrayList<UserRoleVo>();
		for (Iterator iterator = list.iterator(); iterator.hasNext();) {
			UserRole userRoles = (UserRole) iterator.next();
			UserRoleVo userRoleVo2 = new UserRoleVo();
			BeanUtils.copyProperties(userRoles, userRoleVo2);
			listVo.add(userRoleVo2);
		}
		return listVo;
	}
	/**
	 * 根据id查询数据
	 */
	@Override
	public UserRoleVo findId(String id) {
		UserRole userRole = userRoleDao.findId(id);
		UserRoleVo userRoleVo = new UserRoleVo();
		BeanUtils.copyProperties(userRole, userRoleVo);
		return userRoleVo;
	}

	@Override
	public List<UserRoleVo> findUserId(String userId) {
		List<UserRole> list = userRoleDao.findUserId(userId);
		List<UserRoleVo> listVo = new ArrayList<UserRoleVo>();
		for (Iterator iterator = list.iterator(); iterator.hasNext();) {
			UserRole userRole = (UserRole) iterator.next();
			if(userRole.getRole().getRoleValidity().equals("1")) {
				UserRoleVo userRoleVo = new UserRoleVo();
				BeanUtils.copyProperties(userRole, userRoleVo);
				userRoleVo.setRole(userRole.getRole().getRoleId());
				listVo.add(userRoleVo);
			}
		}
		return listVo;
	}
	
}